// dev.js
import { onMounted, onUnmounted } from 'vue'

import { storeToRefs } from 'pinia';
import  {usePixiStore}  from '@/store/pixi'
import {useRouter} from 'vue-router'
// import {Pixi} from '@/pixi'


// 按照惯例，组合式函数名以“use”开头，默认数值500
export let usePixiSize = async () => {
  // 一个组合式函数也可以挂靠在所属组件的生命周期上
  // 来启动和卸载副作用
  onMounted(() => window.addEventListener('resize', update))
  onUnmounted(() => window.removeEventListener('resize', update))

  // 在onMounted之下
  const router = useRouter()

  // await Pixi.createTextures()
  // 被组合式函数封装和管理的状态
  let pixiStore = usePixiStore()
  let {currentWidth,currentHeight } = storeToRefs(pixiStore)

  pixiStore.changeCurrentWidth()
  pixiStore.changeCurrentHeight()


  // 组合式函数可以随时更改其状态。
  function update() {
    // router.go(0)
    pixiStore.changeIsRefresh()
    pixiStore.changeCurrentWidth()
    pixiStore.changeCurrentHeight()
  }



  // 通过返回值暴露所管理的状态
  return { currentWidth,currentHeight}
}



